﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using BEPUphysics.Entities;

namespace Asplode
{
    public class EventDispatcher
    {
        public delegate void ZombieSpawnHandler(Entity entity);
        public event ZombieSpawnHandler ZombieSpawn;
        public void RaiseZombieSpawn(Entity entity)
        {
            ZombieSpawn(entity);
        }

        public delegate void RemoveEntityHandler(Entity entity);
        public event RemoveEntityHandler RemoveEntity;
        public void RaiseRemoveEntity(Entity entity)
        {
            RemoveEntity(entity);
        }

        public delegate void BoxSpawnHandler(Box box);
        public event BoxSpawnHandler BoxSpawn;
        public void RaiseBoxSpawn(Box box)
        {
            BoxSpawn(box);
        }

        public delegate void HumanSpawnHandler(Entity entity);
        public event HumanSpawnHandler HumanSpawn;
        public void RaiseHumanSpawn(Entity entity)
        {
            HumanSpawn(entity);
        }
    }
}